package mpo;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

public class User {

    private String Pesel;
    private String haslo;
    private String login;
    private String imie;
    private String nazwisko;
    private String NIP;
    private String telefon;
    private String adres;
    private Date dataWygasnieciaUmowy;
    private int idZlecenia;

    public User() {
        Pesel = "";
        haslo = "";
        login = "";
    }

    public User(String pesel) {
        this.Pesel = pesel;
    }

    public User(String imie, String nazwisko) {

        this.imie = imie;
        this.nazwisko = nazwisko;
    }

    public User(String Pesel, String haslo, String login, String imie,
            String nazwisko, String NIP, String telefon, String adres, int idZlecenia) {

        this.Pesel = Pesel;
        this.haslo = haslo;
        this.login = login;
        this.imie = imie;
        this.nazwisko = nazwisko;
        this.NIP = NIP;
        this.telefon = telefon;
        this.adres = adres;
        this.idZlecenia = idZlecenia;
    }

    public User(String Pesel, String haslo, String login, String imie, String nazwisko, String NIP, String telefon,
            String adres, String dataWygasnieciaUmowy, int idZlecenia) {

        this.Pesel = Pesel;
        this.haslo = haslo;
        this.login = login;
        this.imie = imie;
        this.nazwisko = nazwisko;
        this.NIP = NIP;
        this.telefon = telefon;
        this.adres = adres;
        this.setDataWygasnieciaUmowyViaString(dataWygasnieciaUmowy);
        this.idZlecenia = idZlecenia;
    }

    public String getPesel() {
        return Pesel;
    }

    public String getHaslo() {
        return haslo;
    }

    public String getLogin() {
        return login;
    }

    public String getImie() {
        return imie;
    }

    public String getNazwisko() {
        return nazwisko;
    }

    public String getTelefon() {
        return telefon;
    }

    public String getAdres() {
        return adres;

    }

    public Date getDataWygasnieciaUmowy() {
        return dataWygasnieciaUmowy;
    }

    public String getDataWygasnieciaUmowyViaString() {
        try {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            String date = sdf.format(this.dataWygasnieciaUmowy);
            return date;
        } catch (Exception e) {
            return null;
        }
    }

    public String getdataWygasnieciaUmowyViaString() {
        try {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            String date = sdf.format(dataWygasnieciaUmowy);
            return date;
        } catch (Exception e) {
            System.err.println(e);
            return "";
        }

    }

    public String getNIP() {
        return NIP;
    }

    public int getIdZlecenia() {
        return idZlecenia;
    }

    public void setIdZlecenia(int idZlecenia) {
        this.idZlecenia = idZlecenia;
    }

    public void setNIP(String NIP) {
        this.NIP = NIP;
    }

    public void setPesel(String Pesel) {
        this.Pesel = Pesel;
    }

    public void setHaslo(String haslo) {
        this.haslo = haslo;
    }

    public void setLogin(String login) {
        this.login = login;
    }

    public void setImie(String imie) {
        this.imie = imie;
    }

    public void setNazwisko(String nazwisko) {
        this.nazwisko = nazwisko;
    }

    public void setTelefon(String telefon) {
        this.telefon = telefon;
    }

    public void setAdres(String adres) {
        this.adres = adres;
    }

    public void setDataWygasnieciaUmowy(Date dataWygasnieciaUmowy) {
        this.dataWygasnieciaUmowy = dataWygasnieciaUmowy;
    }

    public void setDataWygasnieciaUmowyViaString(String dataS) {
        try {
            this.dataWygasnieciaUmowy = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH).parse(dataS);
        } catch (Exception e) {
            this.dataWygasnieciaUmowy = null;
        }
    }

    @Override
    public String toString() {
        return "User{" + "Pesel=" + Pesel + ", haslo=" + haslo + ", login=" + login + ", imie=" + imie + ", nazwisko=" + nazwisko + ", NIP=" + NIP + ", telefon=" + telefon + ", adres=" + adres + ", dataWygasnieciaUmowy=" + dataWygasnieciaUmowy + '}';
    }

}
